var prefix = ctx +"module/pickUpPlan/"
$(function() {
    load();
});

function load() {
    layui.use(['form', 'table'], function () {
        var form = layui.form,
            table = layui.table;
        var searchParams = {};
        searchParams['keywords']=$('#keywords').val();
        //初始化table
        table.render({
            elem: '#exampleTable',//承载数据的table Id
            url: prefix + "/list",//请求数据连接
            toolbar: '#toolbarDemo',
            cellMinWidth: 80,//全局定义所有常规单元格的最小宽度（默认：60）
            even: true,//是否开启隔行变色
            loading:true,//是否显示加载条
            where :{
                searchParams:searchParams
            },
            //page: true,//是否分页
            page: { //支持传入 laypage 组件的所有参数（某些参数除外，如：jump/elem） - 详见文档
                layout: [ 'prev', 'page', 'next', 'skip', 'count','limit'] //自定义分页布局
            },
            cols: [[
                // {type:'numbers',title: '序号', width:'5%'},
                {field: 'shopName', title: '企业名称', align: 'center',},
                {field: 'planName', title: '计划名称', align: 'center',},
                {field: 'carCount',  title: '所需车辆数', align: 'center',},
                {field: 'planDate', title: '计划日期', align: 'center',},
                {field: 'state', title: '状态', align: 'center', templet: function (item) {
                        /*1 - 安全科已处理  2 - 部门已处理  3 - 安全科已确认*/
                        var state = ''
                        if (item.state == 1) {
                            state = '<span class="label label-info">待发布</span>'
                        } else if (item.state == 2) {
                            state = '<span class="label label-success">发布中</span>'
                        } else if (item.state == 3) {
                            state = '<span class="label label-danger ">已结束</span>'
                        }
                        return state;
                    }},
                {title: '操作', width: 180, templet: '#currentTableBar', fixed: "right", align: "center"}
            ]],
            id: 'currentTableId',//表格Id
        });
        /**
         * 操作栏tool  监听事件
         */
        table.on('tool(currentTableFilter)', function (obj) {
            if (obj.event === 'edit') {  // 监听添加操作
                edit(obj.data.id);
            } else if (obj.event === 'delete') {  // 监听删除操作
                remove(obj.data.id);
            }else if (obj.event === 'publish') {  // 监听删除操作
                publish(obj.data.id);
            }else if (obj.event === 'endPublish') {  // 监听删除操作
                endPublish(obj.data.id);
            }
        });
        // 监听搜索操作
        form.on('submit(data-search-btn)', function (data) {
            //执行搜索重载
            reLoad();
            return false;
        });

        /**
         * 工具栏  监听事件
         */
        table.on('toolbar(currentTableFilter)', function (obj) {
            if (obj.event === 'add') {  // 监听添加操作
                add();
            } else if (obj.event === 'upload') {  // 批量上传设备
                batchAdd();
            } else if (obj.event === 'upload_user') {  // 批量上传设备
                batchAddUser();
            }
        });
    });
}
function publish(id) {
    layer.confirm('发布后无法修改，确定要发布此预约吗？', {
        btn : [ '确定', '取消' ]
    }, function() {
        $.ajax({
            url : prefix+"/isHasPublish",
            type : "post",
            data : {
            },
            success: function (r) {
                if (r.code == 0 && r.data == 0) {
                    publish(id)
                } else if (r.code == 0 && r.data > 0) {
                    layer.confirm('存在已发布的预约，确认后自动结束上次预约，确认发布吗？', {
                        btn: ['确定', '取消']
                    }, function () {
                        publish(id)
                    })
                } else {
                    layer.msg(r.msg);
                }
            }
        });


    })
}
function publish(id) {
    $.ajax({
        url : prefix+"/publish",
        type : "post",
        data : {
            'id' : id
        },
        success : function(r) {
            if (r.code==0) {
                layer.msg(r.msg);
                reLoad();
            }else{
                layer.msg(r.msg);
            }
        }
    });
}
function endPublish(id) {
    layer.confirm('确定要结束发布此预约吗？', {
        btn : [ '确定', '取消' ]
    }, function() {
        $.ajax({
            url : prefix+"/endPublish",
            type : "post",
            data : {
                'id' : id
            },
            success : function(r) {
                if (r.code==0) {
                    layer.msg(r.msg);
                    reLoad();
                }else{
                    layer.msg(r.msg);
                }
            }
        });
    })
}
function reLoad() {
    var searchParams = {};
    searchParams['keywords']=$('#keywords').val();

    layui.use(['table'], function() {
        var table = layui.table;//载入table模块

        var  page = $(".layui-laypage-skip").find("input").val() //当前页码值
        console.log('page',page)
        table.reload('currentTableId', {
            page: {curr: page}
            , where: {
                searchParams: searchParams
            }
        }, 'data');
    });
}



function add() {
    var index = layer.open({
        type : 2,
        title : '增加',
        maxmin : true,
        shadeClose : false, // 点击遮罩关闭层
        area : [ '800px', '420px' ],
        content : prefix + '/add' // iframe的url
    });
    layer.full(index);
}



function batchAdd() {
    var index = layer.open({
        type : 2,
        title : '批量增加',
        maxmin : true,
        shadeClose : false, // 点击遮罩关闭层
        area : [ '800px', '320px' ],
        content : prefix + 'goBatchAdd' // iframe的url
    });
}

function edit(id) {
    var index = layer.open({
        type : 2,
        title : '编辑',
        maxmin : true,
        shadeClose : false, // 点击遮罩关闭层
        area : [ '800px', '520px' ],
        content : prefix + '/edit/' + id // iframe的url
    });

    layer.full(index);
}
function remove(id) {
    layer.confirm('确定要删除选中的记录？', {
        btn : [ '确定', '取消' ]
    }, function() {
        $.ajax({
            url : prefix+"/remove",
            type : "post",
            data : {
                'id' : id
            },
            success : function(r) {
                if (r.code==0) {
                    layer.msg(r.msg);
                    reLoad();
                }else{
                    layer.msg(r.msg);
                }
            }
        });
    })
}
